Authenticating, establishing and tracking eligibility of a patient to purchase an over-the-counter drug

ABSTRACT

A method is provided for authenticating, and establishing and tracking eligibility of a patient to purchase an over-the-counter (OTC) drug from a retailer, the patient using a client device or terminal and the retailer having a server. The server is configured to redirect the client device or terminal to a backend platform to authenticate the patient, access a storage to search for any information that indicates the patient is ineligible to purchase the OTC drug; and without any information that indicates the patient is ineligible, administer a questionnaire to the patient to assess the eligibility for the OTC drug. And the backend platform redirects the client device or terminal back to the server to complete the online sale of the OTC drug to the patient when the patient is eligible, or cancel the online sale of the OTC drug to the patient when the patient is ineligible.

CROSS-REFERENCE TO RELATED APPLICATION(S)

The application is a continuation application of U.S. patent applicationSer. No. 15/733,572, filed Aug. 31, 2020, which is a national stageapplication under 35 U.S.C. § 371 of International Application No.PCT/IB2019/051638, filed internationally on Feb. 28, 2019, which claimsthe benefit of priority to U.S. Provisional Patent Application No.62/637,598, filed Mar. 2, 2018.

TECHNOLOGICAL FIELD

The present disclosure relates generally to sales of over-the-counterdrugs and, in particular, to authenticating, and establishing andtracking eligibility of a patient to purchase an over-the-counter drug.

BACKGROUND

E-commerce often refers to the buying or selling of goods or servicesonline—or over the Internet. In many ways, e-commerce transactions areeasier and more efficient, and today a wide variety of goods andservices are bought and sold online. Nonetheless, there are a number ofgoods and services that remain difficult to buy and sell online.

One example of a complicated online transaction that exists in somecountries and is anticipated to exist in the United States in the futureis for the sale of certain over-the-counter (OTC) (i.e.,non-prescription) drugs with conditions of safe use, such as those drugsfor which additional support or patient education beyond what isavailable on the package label may be required to assist a consumer indetermining whether the drug is appropriate to use. Online retailers aregenerally unequipped to provide the requisite assessment or patienteducation to establish eligibility of a patient to purchase such an OTCdrugs. Online retailers are also unequipped to prevent a patient foundineligible by one online retailer from attempting to establisheligibility with another online retailer.

Therefore it would be desirable to have a system and method that takesinto account at least some of the issues discussed above, as well asother possible issues.

BRIEF SUMMARY

In view of the foregoing background, example implementations of thepresent disclosure are directed to authenticating, and establishing andtracking eligibility over a patient to purchase an over-the-counter drugsuch as an over-the-counter drug with conditions of safe use.

The present disclosure thus includes, without limitation, the followingexample implementations.

Some example implementations provide a method of authenticating, andestablishing and tracking eligibility of a patient to purchase anover-the-counter (OTC) drug, the method comprising at a backendplatform: communicating with a server of a retailer of the OTC drug toauthenticate, and establish and track eligibility of the patient topurchase the OTC drug, the server configured to effect an online sale ofthe OTC drug to the patient using a client device or terminal, theserver configured to redirect the client device or terminal to thebackend platform to communicate with the client device or terminal forat least: authenticating the patient; accessing a storage to search forany information that indicates the patient is ineligible to purchase theOTC drug; and without any information that indicates the patient isineligible, administering a questionnaire to the patient, specific tothe OTC drug, to assess the eligibility for the OTC drug and therebyestablish eligibility of the patient to purchase the OTC drug, ordetermine that the patient is ineligible to purchase the OTC drug; andredirecting the client device or terminal back to the server to completethe online sale of the OTC drug to the patient when eligibility of thepatient is established, or cancel the online sale of the OTC drug to thepatient when the patient is ineligible to purchase the OTC drug.

In some example implementations of the method of any preceding exampleimplementation, or any combination of any preceding exampleimplementations, when the patient is ineligible to purchase the OTCdrug, the method further comprises storing information that indicatesthe patient is ineligible in the storage, and accessing the storage tosearch for the information in connection with a subsequent online saleof the OTC drug to the patient by the retailer or a second retailer.

In some example implementations of the method of any preceding exampleimplementation, or any combination of any preceding exampleimplementations, the method further comprises at the backend platform,communicating with a second server of the second retailer of the OTCdrug to authenticate, and establish and track eligibility of the patientto purchase the OTC drug for the subsequent online sale of the OTC drug,including the backend platform accessing the storage to search for theinformation that indicates the patient is ineligible.

In some example implementations of the method of any preceding exampleimplementation, or any combination of any preceding exampleimplementations, authenticating the patient includes at least: promptingthe patient to provide a first name, last name, and at least oneadditional piece of information including mailing address or driver'slicense number of the patient; and authenticating the patient based on acombination of the first name, last name and at least one additionalpiece of information that is considered unique to the patient.

In some example implementations of the method of any preceding exampleimplementation, or any combination of any preceding exampleimplementations, the information that indicates the patient isineligible to purchase the OTC drug includes information that indicatesthe patient is attempting to repurchase the OTC drug within a particulartime period, the patient has taken the questionnaire more than athreshold number of times without eligibility being established, or thepatient has taken the questionnaire within a particular time period ofpresent time.

In some example implementations of the method of any preceding exampleimplementation, or any combination of any preceding exampleimplementations, administering the questionnaire administering thequestionnaire including a set of predetermined questions and definedresponses, and branching logic to guide the patient through thequestionnaire based on selected responses to the predeterminedquestions.

In some example implementations of the method of any preceding exampleimplementation, or any combination of any preceding exampleimplementations, the questionnaire includes a set of predeterminedquestions, and administering the questionnaire includes storing surveydata including selected responses to the predetermined questions in thestorage, and wherein the method further comprises re-administering thequestionnaire after the questionnaire is administered, includingaccessing the survey data from the storage, and presenting a summary ofthe questionnaire including the predetermined questions and the selectedresponses, and prompt the patient to confirm or update the selectedresponses.

Some example implementations provide an apparatus configured toimplement a backend platform for authenticating, and establishing andtracking eligibility of a patient to purchase an over-the-counter (OTC)drug, the apparatus comprising: a memory configured to storecomputer-readable program code; and a processor configured to access thememory, and execute the computer-readable program code to cause theapparatus to perform the method of any preceding example implementation,or any combination of any preceding example implementations.

Some example implementations provide a computer-readable storage mediumfor authenticating, and establishing and tracking eligibility of apatient to purchase an over-the-counter (OTC) drug, thecomputer-readable storage medium being non-transitory and havingcomputer-readable program code stored therein that, in response toexecution by a processor, causes an apparatus configured to implement abackend platform to perform the method of any preceding exampleimplementation, or any combination of any preceding exampleimplementations.

Some example implementations provide a system for authenticating, andestablishing and tracking eligibility of a patient to purchase anover-the-counter (OTC) drug, the system comprising a backend platformconfigured to authenticate, and establish and track eligibility of thepatient to purchase the OTC drug; and a server of a retailer of the OTCdrug, the server configured to effect an online sale of the OTC drug tothe patient using a client device or terminal, the server configured toredirect the client device or terminal to the backend platform for thebackend platform to communicate with the client device or terminal to atleast: authenticate the patient; access a storage to search for anyinformation that indicates the patient is ineligible to purchase the OTCdrug; and without any information that indicates the patient isineligible, administer a questionnaire to the patient, specific to theOTC drug, to assess the patient's eligibility for the OTC drug andthereby establish eligibility of the patient to purchase the OTC drug,or determine that the patient is ineligible to purchase the OTC drug;and redirect the client device or terminal back to the server tocomplete the online sale of the OTC drug to the patient when eligibilityof the patient is established, or cancel the online sale of the OTC drugto the patient when the patient is ineligible to purchase the OTC drug.

In some example implementations of the system of the preceding exampleimplementation, when the patient is ineligible to purchase the OTC drug,the backend platform is further configured to store information thatindicates the patient is ineligible in the storage, and access thestorage to search for the information in connection with a subsequentonline sale of the OTC drug to the patient by the retailer or anotherretailer.

These and other features, aspects, and advantages of the presentdisclosure will be apparent from a reading of the following detaileddescription together with the accompanying figures, which are brieflydescribed below. The present disclosure includes any combination of two,three, four or more features or elements set forth in this disclosure,regardless of whether such features or elements are expressly combinedor otherwise recited in a specific example implementation describedherein. This disclosure is intended to be read holistically such thatany separable features or elements of the disclosure, in any of itsaspects and example implementations, should be viewed as combinable,unless the context of the disclosure clearly dictates otherwise.

It will therefore be appreciated that this Brief Summary is providedmerely for purposes of summarizing some example implementations so as toprovide a basic understanding of some aspects of the disclosure.Accordingly, it will be appreciated that the above described exampleimplementations are merely examples and should not be construed tonarrow the scope or spirit of the disclosure in any way. Other exampleimplementations, aspects and advantages will become apparent from thefollowing detailed description taken in conjunction with theaccompanying figures which illustrate, by way of example, the principlesof some described example implementations.

BRIEF DESCRIPTION OF THE FIGURE(S)

Having thus described the disclosure in general terms, reference willnow be made to the accompanying figures, which are not necessarily drawnto scale, and wherein:

FIG. 1 illustrates a system for authenticating, and establishing andtracking eligibility of a patient to purchase an over-the-counter (OTC)drug such as an OTC drug with conditions of safe use, according toexample implementations of the present disclosure;

FIG. 2 is a control flow diagram that illustrates the system of FIG. 1implementing a method of authenticating, and establishing and trackingeligibility of a patient to purchase an OTC drug, according to someexample implementations;

FIG. 3 is a more-detailed control flow diagram that illustrates thesystem of FIG. 1 implementing a method of authenticating, andestablishing and tracking eligibility of a patient to purchase an OTCdrug, according to some example implementations;

FIGS. 4 and 5 are respectively a conceptual data model and logical datamodel according to some example implementations; and

FIG. 6 illustrates an apparatus according to example implementations.

DETAILED DESCRIPTION

Some implementations of the present disclosure will now be describedmore fully hereinafter with reference to the accompanying figures, inwhich some, but not all implementations of the disclosure are shown.Indeed, various implementations of the disclosure may be embodied inmany different forms and should not be construed as limited to theimplementations set forth herein; rather, these example implementationsare provided so that this disclosure will be thorough and complete, andwill fully convey the scope of the disclosure to those skilled in theart. As used herein, for example, the singular forms “a,” “an,” “the”and the like include plural referents unless the context clearlydictates otherwise. The terms “data,” “information,” “content” andsimilar terms may be used interchangeably, according to some exampleimplementations of the present invention, to refer to data capable ofbeing transmitted, received, operated on, and/or stored. Also, forexample, reference may be made herein to quantitative measures, values,relationships or the like. Unless otherwise stated, any one or more ifnot all of these may be absolute or approximate to account foracceptable variations that may occur, such as those due to engineeringtolerances or the like. Like reference numerals refer to like elementsthroughout.

FIG. 1 illustrates a system 100 for authenticating, and establishing andtracking eligibility of a patient (sometimes referred to as a user) topurchase an over-the-counter (OTC) drug such as an OTC drug withconditions of safe use, according to example implementations of thepresent disclosure. As shown, the system may be implemented with anInternet-based computing architecture including a computer network or anumber of interconnected computer networks 102 in or over which a numberof systems, platforms, computers and the like communicate or otherwiseoperate. As shown, these include client devices 104, online retailerservers 106, and a backend platform 108 configured to authenticate, andestablish and track eligibility of patients using respective ones of theclient devices to purchase one or more OTC drugs from online retailersthat operate the online retailer servers.

As also shown, the backend platform 108 may include one or moreco-located or distributed servers, data storage and the like, such as anauthentication server 110, eligibility server 112, eligibility trackerserver 114 and storage 116, which may cooperate to provide services ofthe backend platform. In some examples, an authentication server and/oreligibility server may be co-located with each of one or more of theonline retailer servers, and configured to communicate with theeligibility tracker server and storage at the backend platform. Althoughshown and described herein in the context of an Internet-based computingarchitecture, it should also be understood that the system mayimplemented with any of a number of different network-basedarchitectures.

The network 102 may be implemented as one or more wired networks,wireless networks or some combination of wired and wireless networks.The network may include private, public, academic, business orgovernment networks, or any of a number of different combinationsthereof, and in the context of an Internet-based computing architecture,includes the Internet. The network may support one or more of any of anumber of different communications protocols, technologies or the like,such as cellular telephone, Wi-Fi, satellite, cable, digital subscriberline (DSL), fiber optics and the like.

The systems, platforms and computers connected to the network 102 mayalso be implemented in a number of different manners. The client devices104 are generally hardware devices configured to enable an onlinetransaction of purchasing goods or services such as OTC drugs, fromonline retailers that operate online retailer servers 106. This may beaccomplished using software such has a web browser presenting a websiteof the online retailer, a mobile app of the online retailer, or thelike. In some examples, the client devices are fixed or mobile computingdevices such as a desktop computer, portable computer (e.g., laptopcomputer, tablet computer), mobile phone (e.g., smartphone, cellularphone), wearable computer (e.g., smartwatch, optical head-mounteddisplay) or the like.

In some examples, each of the online retailer servers 106 is implementedas one or more server computers. Similarly, in some examples, thebackend platform 108 with its authentication server 110, eligibilityserver 112 and eligibility tracker server 114 is implemented as one ormore server computers. In any instance, other implementations arecontemplated, such as mainframe computers, personal computers, or thelike. Each of these servers may be embodied as one or more servers, anetwork of interworking computing devices (e.g., a distributed computerimplemented by multiple computers) or the like. In implementations inwhich a server is implemented as a distributed computer, its multiplecomputers may communicate over a network such as network 102.

The storage 116 of the backend platform 108 is any of a number ofdifferent devices configured to store information used to provideservices of the backend platform. One example of suitable storage isnetwork storage composed of physical storage across a plurality ofserver computers. Other examples of suitable storage include filestorage, database storage and the like.

FIG. 2 is a control flow diagram that illustrates the system 100implementing a method of authenticating, and establishing and trackingeligibility of a patient to purchase an OTC drug, according to someexample implementations. Again, the backend platform 108 (including anauthentication server 110, eligibility server 112, eligibility trackerserver 114 and storage 116) is configured to authenticate, and establishand track eligibility of the patient to purchase the OTC drug. Theonline retailer server 106 of an online retailer of the OTC drug isconfigured to effect an online sale of the OTC drug to the patient usinga client device 104.

In accordance with example implementations of the present disclosure,before completing the online sale, the online retailer server 106 isconfigured to redirect the client device 104 to the backend platform 108for the backend platform to communicate with the client device toperform a number of operations to authenticate, and establish and trackeligibility of the patient to purchase the OTC drug. This includes theauthentication server 110 of the backend platform in communication withthe client device to authenticate the patient.

In some examples, authentication may include the patient registering orotherwise logging in with the authentication server 110. If the patientis a first-time user, the patient may be prompted via their clientdevice 104 to enter and submit profile data to the backend platform 108,with the possibility that some profile data may be prepopulated from theonline retailer server 106. This may include the patient establishing ausername and password. The patient may then be authenticated (or theiridentity otherwise validated), such as using credit card, a third-partyidentity verification service, or the patient's driver's license aloneor with crowd-source or technological verification.

More particularly, in some examples, the patient may be prompted toprovide credit card details including the patient's first name, lastname and mailing address associated with the credit card. Theauthentication server 110 may then communicate with the credit cardcompany such as via an appropriate application programming interface(API) to verify the credit card and the associated patient name andmailing address. The combination of first name, last name and mailingaddress may be considered unique and used to ensure that no two patientsexist with these exact same attributes. And in some example, the creditcard details are not maintained by the authentication server or instorage 116.

In some examples, the authentication server 110 may communicate with athird-party identity verification service such as Experian, IDology,Trulioo and the like (e.g., via API) for the third-party identityverification service to authenticate the patient. The third-partyidentity verification service may authenticate the patient in a numberof different manners, such as according to a challenge-responseauthentication protocol or technique.

In some examples, the patient may be prompted to provide driver'slicense details including the patient's first name, last name and dateof birth, driver's license number (DLN) and state of issuance. Theauthentication server 110 may then communicate with a third-partyservice (e.g., via API) to verify the driver's license and theassociated patient name and date of birth. Similar to the exampleinvolving credit card authentication, the combination of first name,last name and DLN may be considered unique and used to ensure that notwo patients exist with these exact same attributes.

In some further examples involving driver's license, the patient may befurther prompted for a photograph (e.g., taken using their client device104). In addition to verifying the driver's license, the patient's nameand/or date of birth, along with their photograph may be furtherverified such as using crowd sourcing or automated technology.

Regardless of the exact manner(s) by which the patient is authenticated,if and when the patient is authenticated, the authentication server 110of the backend platform 108 may create a user record in storage 116 inwhich the patient's profile data is stored with an indicator (e.g.,‘identity_validated’) that the patient has been authenticated. In someexamples, the patient may also be prompted for contact information suchas an email address or phone number, and the authentication server maysend an email or text message to the email address or phone number toprompt the patient to verify their contact information.

When the email address or phone number is verified, the patient isregistered and authenticated, and permitted to proceed to the assessmentof their need for the OTC drug. For the patient who is a repeat user andalready registered, the authentication server 110 may prompt the patientfor their username and password, which may be used to authenticate thepatient before the patient is permitted to proceed to the assessment oftheir need for the OTC drug, assuming storage 116 does not otherwiseinclude any information that indicates the patient is ineligible topurchase the OTC drug.

After patient authentication, particularly in instances of a repeatuser, the backend platform (eligibility tracker server 114) isconfigured to access the storage 116 to search for any information thatindicates the patient is ineligible to purchase the OTC drug. Asdescribed below, this may include information that indicates the patientis attempting to repurchase the OTC drug within a particular timeperiod. In another example, the information may indicate that thepatient has taken a questionnaire (described in greater detail below) toestablish eligibility more than a threshold number of times withoutsuccess, and/or that the patient has taken the questionnaire within aparticular time period of present time. Only in instances in which thestorage does not include any such information is the patient permittedto proceed.

More particularly, absent or otherwise without the storage 116 includingany information that indicates the patient is ineligible, the backendplatform 108 (eligibility server 112) is configured to communicate withthe client device 104 to administer a questionnaire (sometimes referredto as a survey) to the patient, specific to the OTC drug, to assess theeligibility for the OTC drug. In this regard, the questionnaire mayinclude a set of predetermined questions and defined responses, andbranching (e.g., if-then) logic to guide the patient through thequestionnaire based on their selected responses to the predeterminedquestions. The assessment of the eligibility for the OTC drug is used toestablish eligibility of the patient to purchase the OTC drug, ordetermine that the patient is ineligible to purchase the OTC drug. Thebackend platform (eligibility server) may then redirect the clientdevice back to the online retailer server to complete the online sale ofthe OTC drug to the patient when eligibility of the patient isestablished, or cancel the online sale of the OTC drug to the patientwhen the patient is ineligible to purchase the OTC drug.

In some examples, when the patient is ineligible to purchase the OTCdrug, the backend platform 108 (eligibility server 112) is furtherconfigured to store information that indicates the patient is ineligiblein the storage 116. Similar to before, the backend server may thenaccess the storage to search for the information in connection with asubsequent online sale of the OTC drug to the patient by the onlineretailer or another, second online retailer. The backend platform maythereby track eligibility of the patient to prevent the patient fromattempting to purchase the OTC drug from the second online retailer,repeating the questionnaire but with different answers to attempt toestablish eligibility.

FIG. 3 is a more-detailed control flow diagram that illustrates thesystem 100 implementing a method of authenticating, and establishing andtracking eligibility of a patient to purchase an OTC drug, according tosome example implementations. In FIG. 3 , various functions of thebackend platform 108 are performed in coordination with the onlineretailer server 106. In these examples, functionality of theauthentication server 110 and/or eligibility server 112 may beimplemented at the online retailer server, or split between the backendplatform and online retailer server. The backend platform may thenimplement the eligibility tracker server 114 to track patient data andquestionnaire response data useful in tracking eligibility of thepatient, and which may be maintained in the storage 116.

To further illustrate example implementations of the present disclosure,the backend platform 108 (itself or in coordination with an onlineretailer 106) may provide a graphical user interface (GUI) and perhapsalso various other messages (e.g., email, text message) to authenticateand establish eligibility of a patient to purchase an OTC drug,according to example implementations. In particular, the GUI may enableregistration and authentication of the patient, as well asadministration of a questionnaire to assess the patient's eligibilityfor the OTC drug. The questionnaire may include a set of predeterminedquestions regarding the patient's gender and date of birth, and may alsoverify the patient's phone number as an added measure of authentication.

The questionnaire may include questions regarding whether the patienthas the medical condition for which the OTC drug was designed, andwhether the patient has ever had an allergic reaction to the OTC drug.The questionnaire may include questions regarding other medications thatare known in combination with the OTC drug to cause complications, andquestions regarding the health status of the patient, which in someexamples may include cardiovascular conditions of the patient. Thequestionnaire may include questions regarding medications the patientmay be taking, and other medical conditions the patient may have.

Based on the patient's responses to any one or more of the questions,the backend platform 108 may find the patient ineligible to purchase theOTC drug, or eligible to purchase the OTC drug. And when the patient iseligible, the backend platform may provide the patient with furthereducation regarding the OTC drug, or ask the patient to confirmconsultation with a doctor or pharmacist regarding the OTC drug.

FIGS. 4 and 5 are respectively a conceptual data model and logical datamodel according to some example implementations. As explained above, thebackend platform 108 may maintain a user record for the patient (instorage 116) including profile data with attributes of the patient, andalso including information regarding eligibility or ineligibility of thepatient to purchase the OTD drug. Examples of suitable attributesinclude:

Attribute Name Description Source id Backend platform uuid Unique useridentifier at Backend platform backend platform external_uid Unique useridentifier at Online retailer server online retailer external_partner_idIdentifier of online retailer Backend platform first_name User firstname User input (at online retailer or backend platform) last_name Userlast name User input (at online retailer or backend platform) email Useremail User input (at online retailer or backend platform) mobile_numberUser mobile number User input (at online retailer or backend platform)address User mailing address User input (at backend platform)driving_license_number User driver’s license User input (at backendnumber platform) date_of_birth User date of birth User input (at backendplatform) last_purchase_date Last purchase date of OTC Online retailerserver drug last_screening_date Date questionnaire last Backend platformadministered num_screening_attempts Number of times Backend platformquestionnaire administered one_time_code Code that may be used forBackend platform third-party verification service authenticationone_time_code_ When one time code Backend platform creation_timestampcreated role User role (initially Backend platform ‘unverified’) createdWhen user record created Backend platform last_modified User record lastmodified Backend platform modified_by User record modified by Backendplatform

In addition to the user record, the backend platform 108 may alsomaintain survey (questionnaire) data for the patient (in storage 116).Examples of suitable survey data include:

Attribute Name Description Source id Unique survey entry Backendplatform identifier survey_id Unique survey identifier Backend platformuser_id Unique user identifier Backend platform state User entry stateBackend platform survey_result_id Survey result Backend platformtimestamp Time survey taken Backend platform device_id User’s clientdevice Backend platform identifier (if available) client_ip User’s IPaddress Backend platform referrer Referrer Backend platformsurvey_entry_id Survey entry unique id Backend platform survey_question_Choice made by user for a User input choice_id survey question (atbackend platform)

As indicated above, a repeat user may be a user who has been eligiblefor an OTC drug to repurchase the OTC drug, which may in some instancesrequire passage of a particular time period before which the user isineligible to repurchase. Or a repeat user may be a user who has beenineligible but that is allowed to retake the questionnaire, such as whenthe system allows the user to retake the questionnaire after beingdetermined ineligible (e.g., up to a threshold number of times),immediately or after a particular time period. In these cases, thestorage 116 may not include information that indicates the patient isineligible, and the backend platform 108 (eligibility server 112) may beconfigured to communicate with the client device 104 to re-administerthe questionnaire. In other cases, however, a repeat user may be a userthat the system does not allow to retake the questionnaire, such as ininstances in which the system has determined the user is permanentlyineligible for the OTC drug from an earlier assessment of eligibility.

In cases in which the repeat user is allowed to retake thequestionnaire, in some examples, eligibility server 112 is configured tore-administer the questionnaire without regard to any earlieradministration of the questionnaire to the user. In other examples, theeligibility server is configured to access the survey data for thepatient from the storage 116, and in particular the user's selectedresponses (survey_question_choice_id) to predetermined questions from anearlier administration of the questionnaire (survey_id). The eligibilityserver may then streamline re-administration of the questionnaire usingthe selected responses from the earlier administration. In particular,for example, the eligibility server may present a summary of thequestionnaire including the predetermined questions and their selectedresponses, and prompt the user to confirm or update their selectedresponses. This summary may include all or only a subset of questionsfrom the questionnaire, perhaps omitting questions with selectedresponses unlikely to change (e.g., gender, date of birth). Theeligibility server may then use this summary with its confirmed/updatedresponses to assess eligibility for the OTC drug, similar to before.

Returning to FIG. 1 , in some examples, the backend platform 108 mayalso be configured to authenticate, and establish and track eligibilityof a patient to purchase an OTC drug at a point of sale such as apharmacy or other retail store where OTC drugs may be found. In theseexamples, the system 100 may include one or more point-of-sale (POS)systems 118 each of which is generally a system used by a retailer toeffect sales transactions, record sales and track inventory. The POSsystem includes one or more of each of a number of components includinga POS terminal 120 (or more simply a terminal) and POS server 122.Generally, then, either the online retailer server 106 or the POS servermay be more simply a server of a retailer, or more particularly anonline or POS retailer.

In some examples, the POS terminal 120 is or includes a fixed or mobilecomputing device such as those described above in the context of theclient device 104. As another example, the POS terminal may be a smartinteractive display device. And in some examples, the POS terminal maybe integrated or otherwise configured to communicate with aspecial-purpose computer that interfaces with payment cards and otherpayment technologies to make electronic funds transfers. The POS server122 is configured to transmit data from the POS terminal to a retailerservice provider for authorization and transfer of funds to theretailer.

The POS terminal 120 and POS server 122 may be configured to operate ina manner similar to the client device 104 and online retailer server 106as described above, but to effect a point of sale transaction for an OTCdrug. More particularly, for example, the POS server may be configuredto effect a point of sale transaction for the OTC drug to the patientusing the POS terminal. The POS terminal may be directed to the backendplatform 108 for the backend platform to communicate with the POSterminal to at least authenticate the patient, and access the storage116 to search for any information that indicates the patient isineligible to purchase the OTC drug.

Similar to before, without any information that indicates the patient isineligible, the backend platform 108 may communicate with the POSterminal 120 to administer a questionnaire to the patient, specific tothe OTC drug, to assess the eligibility for the OTC drug and therebyestablish eligibility of the patient to purchase the OTC drug, ordetermine that the patient is ineligible to purchase the OTC drug. Thebackend platform may provide an indication to the POS server 122(directly or through the POS terminal 120) to complete the point of saletransaction for the OTC drug to the patient when eligibility of thepatient is established, or an indication to cancel the point of saletransaction for the OTC drug to the patient when the patient isineligible to purchase the OTC drug.

According to example implementations of the present disclosure, thesystem 100 and its subsystems including the client devices 104, onlineretailer servers 106, backend platform 108 including its authenticationserver 110, eligibility server 112, eligibility tracker server 114 andstorage 116, and the POS system 118 including its POS terminal 120 andPOS server 122, may be implemented by various means. Means forimplementing the system and its subsystems may include hardware, aloneor under direction of one or more computer programs from acomputer-readable storage medium. In some examples, one or moreapparatuses may be configured to function as or otherwise implement thesystem and its subsystems shown and described herein. In examplesinvolving more than one apparatus, the respective apparatuses may beconnected to or otherwise in communication with one another in a numberof different manners, such as directly or indirectly via a wired orwireless network (e.g., network 102) or the like.

FIG. 6 illustrates an apparatus 600 according to some exampleimplementations of the present disclosure. Generally, an apparatus ofexemplary implementations of the present disclosure may comprise,include or be embodied in one or more fixed or portable electronicdevices. The apparatus may include one or more of each of a number ofcomponents such as, for example, a processor 602 connected to a memory604 (e.g., storage device).

The processor 602 may be composed of one or more processors alone or incombination with one or more memories. The processor is generally anypiece of computer hardware that is capable of processing informationsuch as, for example, data, computer programs and/or other suitableelectronic information. The processor is composed of a collection ofelectronic circuits some of which may be packaged as an integratedcircuit or multiple interconnected integrated circuits (an integratedcircuit at times more commonly referred to as a “chip”). The processormay be configured to execute computer programs, which may be storedonboard the processor or otherwise stored in the memory 604 (of the sameor another apparatus).

The processor 602 may be a number of processors, a multi-core processoror some other type of processor, depending on the particularimplementation. Further, the processor may be implemented using a numberof heterogeneous processor systems in which a main processor is presentwith one or more secondary processors on a single chip. As anotherillustrative example, the processor may be a symmetric multi-processorsystem containing multiple processors of the same type. In yet anotherexample, the processor may be embodied as or otherwise include one ormore ASICs, FPGAs or the like. Thus, although the processor may becapable of executing a computer program to perform one or morefunctions, the processor of various examples may be capable ofperforming one or more functions without the aid of a computer program.In either instance, the processor may be appropriately programmed toperform functions or operations according to example implementations ofthe present disclosure.

The memory 604 is generally any piece of computer hardware that iscapable of storing information such as, for example, data, computerprograms (e.g., computer-readable program code 606) and/or othersuitable information either on a temporary basis and/or a permanentbasis. The memory may include volatile and/or non-volatile memory, andmay be fixed or removable. Examples of suitable memory include randomaccess memory (RAM), read-only memory (ROM), a hard drive, a flashmemory, a thumb drive, a removable computer diskette, an optical disk, amagnetic tape or some combination of the above. Optical disks mayinclude compact disk-read only memory (CD-ROM), compact disk-read/write(CD-R/W), DVD or the like. In various instances, the memory may bereferred to as a computer-readable storage medium. The computer-readablestorage medium is a non-transitory device capable of storinginformation, and is distinguishable from computer-readable transmissionmedia such as electronic transitory signals capable of carryinginformation from one location to another. Computer-readable medium asdescribed herein may generally refer to a computer-readable storagemedium or computer-readable transmission medium.

In addition to the memory 604, the processor 602 may also be connectedto one or more interfaces for displaying, transmitting and/or receivinginformation. The interfaces may include one or more communicationsinterfaces and/or one or more user interfaces. The communicationsinterface(s) may be configured to transmit and/or receive information,such as to and/or from other apparatus(es), network(s) or the like. Thecommunications interface may be configured to transmit and/or receiveinformation by physical (wired) and/or wireless communications links.The communications interface(s) may include interface(s) 608 to connectto a network (e.g., network 102), such as using technologies such ascellular telephone, Wi-Fi, satellite, cable, digital subscriber line(DSL), fiber optics and the like. And at least in instances in which theapparatus 600 is configured to implement the mobile device 108 or POSterminal 112, the communications interface(s) may include one or moreshort-range communications interfaces 610 configured to connect devicesusing short-range communications technologies such as NFC, RFID,Bluetooth, Bluetooth LE, ZigBee, infrared (e.g., IrDA) or the like.

The user interfaces may include a display 612 and/or one or more userinput interfaces 614. The display may be configured to present orotherwise display information to a user, suitable examples of whichinclude a liquid crystal display (LCD), light-emitting diode display(LED), plasma display panel (PDP) or the like. The user input interfacesmay be wired or wireless, and may be configured to receive informationfrom a user into the apparatus, such as for processing, storage and/ordisplay. Suitable examples of user input interfaces include amicrophone, image or video capture device, keyboard or keypad, joystick,touch-sensitive surface (separate from or integrated into a touchscreen)or the like. In instances in which the apparatus 600 is configured toimplement the mobile device 108, the user interfaces may include one ormore biometric sensors 616 such as cameras or scanners capable ofacquiring markers for or enabling technology such as fingerprint, palmprint, hand geometry, face recognition, iris recognition, retinarecognition. The user interfaces may further include one or moreinterfaces for communicating with peripherals such as printers, scannersor the like.

As indicated above, program code instructions may be stored in memory,and executed by processor that is thereby programmed, to implementfunctions of the systems, subsystems, tools and their respectiveelements described herein. As will be appreciated, any suitable programcode instructions may be loaded onto a computer or other programmableapparatus from a computer-readable storage medium to produce aparticular machine, such that the particular machine becomes a means forimplementing the functions specified herein. These program codeinstructions may also be stored in a computer-readable storage mediumthat can direct a computer, processor or other programmable apparatus tofunction in a particular manner to thereby generate a particular machineor particular article of manufacture. The instructions stored in thecomputer-readable storage medium may produce an article of manufacture,where the article of manufacture becomes a means for implementingfunctions described herein. The program code instructions may beretrieved from a computer-readable storage medium and loaded into acomputer, processor or other programmable apparatus to configure thecomputer, processor or other programmable apparatus to executeoperations to be performed on or by the computer, processor or otherprogrammable apparatus.

Retrieval, loading and execution of the program code instructions may beperformed sequentially such that one instruction is retrieved, loadedand executed at a time. In some example implementations, retrieval,loading and/or execution may be performed in parallel such that multipleinstructions are retrieved, loaded, and/or executed together. Executionof the program code instructions may produce a computer-implementedprocess such that the instructions executed by the computer, processoror other programmable apparatus provide operations for implementingfunctions described herein.

Execution of instructions by processor, or storage of instructions in acomputer-readable storage medium, supports combinations of operationsfor performing the specified functions. In this manner, an apparatus 600may include processor 602 and a computer-readable storage medium ormemory 604 coupled to the processor, where the processor is configuredto execute computer-readable program code 606 stored in the memory. Itwill also be understood that one or more functions, and combinations offunctions, may be implemented by special purpose hardware-based computersystems and/or processor which perform the specified functions, orcombinations of special purpose hardware and program code instructions.

As explained above, the present disclosure includes any combination oftwo, three, four or more features or elements set forth in thisdisclosure, regardless of whether such features or elements areexpressly combined or otherwise recited in a specific exampleimplementation described herein. This disclosure is intended to be readholistically such that any separable features or elements of thedisclosure, in any of its aspects and example implementations, should beviewed as combinable, unless the context of the disclosure clearlydictates otherwise.

Many modifications and other implementations of the disclosure set forthherein will come to mind to one skilled in the art to which thedisclosure pertains having the benefit of the teachings presented in theforegoing description and the associated figures. Therefore, it is to beunderstood that the disclosure is not to be limited to the specificimplementations disclosed and that modifications and otherimplementations are intended to be included within the scope of theappended claims. Moreover, although the foregoing description and theassociated figures describe example implementations in the context ofcertain example combinations of elements and/or functions, it should beappreciated that different combinations of elements and/or functions maybe provided by alternative implementations without departing from thescope of the appended claims. In this regard, for example, differentcombinations of elements and/or functions than those explicitlydescribed above are also contemplated as may be set forth in some of theappended claims. Although specific terms are employed herein, they areused in a generic and descriptive sense only and not for purposes oflimitation.

1. (canceled)
 2. A computing system configured to implement a server ofa retailer for effecting an online sale of an over-the-counter (OTC)drug to a patient, the computing system comprising a memory configuredto store computer-readable program code, and at least one processorconfigured to access the memory, and execute the computer-readableprogram code to cause the computing system to: communicate with a clientdevice or terminal to effect an online sale of the OTC drug to thepatient; redirect the client device or terminal to a backend platform incommunication with the computing system for the backend platform tocommunicate with the client device or terminal to authenticate, andestablish and track eligibility of the patient to purchase the OTC drug;and receive a redirection of the client device or terminal back from thebackend platform to complete the online sale of the OTC drug to thepatient when eligibility of the patient is established, or cancel theonline sale of the OTC drug to the patient when the patient isineligible to purchase the OTC drug.
 3. The computing system of claim 2,wherein the computing system comprises the backend platform, and whereinthe backend platform is configured to store information that indicatesthe patient is ineligible in a storage and to access the storage tosearch for the information in connection with a subsequent online saleof the OTC drug to the patient by the retailer or a second retailer. 4.The computing system of claim 3, wherein the backend platform isconfigured to communicate with a second server of the second retailer ofthe OTC drug to authenticate, and establish and track eligibility of thepatient to purchase the OTC drug for the subsequent online sale of theOTC drug, including accessing the storage to search for the informationthat indicates the patient is ineligible.
 5. The computing system ofclaim 2, wherein the computing system comprises the backend platform,and wherein the backend platform is configured to communicate with theclient device or terminal to authenticate the patient at least in partby: prompting the patient to provide a first name, a last name, and atleast one additional piece of information including a mailing address ora driver's license number of the patient; and authenticating the patientbased on a combination of the first name, the last name, and at leastone additional piece of information that is considered unique to thepatient.
 6. The computing system of claim 2, wherein the computingsystem comprises the backend platform, and wherein the backend platformis configured to communicate with the client device or terminal toestablish eligibility of the patient at least in part by administering aquestionnaire to the patient to assess the eligibility of the OTC drug,wherein the questionnaire includes a set of predetermined questions anddefined responses, and branching logic to guide the patient through thequestionnaire based on selected responses to the predeterminedquestions.
 7. The computing system of claim 2, wherein the computingsystem comprises the backend platform, and wherein the backend platformis configured to communicate with the client device or terminal toestablish eligibility of the patient at least by administering aquestionnaire to the patient to assess the eligibility of the OTC drug,wherein the questionnaire includes a set of predetermined questions,wherein the backend platform is configured to store survey dataincluding selected responses to the predetermined questions in astorage, and wherein the backend platform is configured to re-administerthe questionnaire after the questionnaire is administered, access thesurvey data from the storage, present a summary of the questionnaireincluding the predetermined questions and the selected responses, andprompt the patient to confirm or update the selected responses.
 8. Thecomputing system of claim 2, wherein the computing system comprises thebackend platform, and wherein the backend platform is configured tocommunicate with the client device or terminal to establish eligibilityof the patient at least by accessing a storage to search for informationthat indicates the patient is attempting to repurchase the OTC drugwithin a particular time period, the patient has taken a questionnairespecific to the OTC drug more than a threshold number of times withouteligibility being established, or the patient has taken thequestionnaire within a particular time period of present time.
 9. Thecomputing system of claim 2, wherein redirecting the client device orterminal to a backend platform in communication with the computingsystem for the backend platform to communicate with the client device orterminal to authenticate, and establish and track eligibility of thepatient to purchase the OTC drug comprises transmitting profile data forthe patient to the backend platform.
 10. A method for effecting anonline sale of an over-the-counter (OTC) drug to a patient by a serverof a retailer, comprising: communicating with a client device orterminal to effect an online sale of the OTC drug to the patient;redirecting the client device or terminal to a backend platform incommunication with the server of the retailer for the backend platformto communicate with the client device or terminal to authenticate, andestablish and track eligibility of the patient to purchase the OTC drug;and receiving a redirection of the client device or terminal back fromthe backend platform to complete the online sale of the OTC drug to thepatient when eligibility of the patient is established, or cancel theonline sale of the OTC drug to the patient when the patient isineligible to purchase the OTC drug
 11. The method of claim 10, whereinwhen the patient is ineligible to purchase the OTC drug, the backendplatform stores information that indicates the patient is ineligible ina storage, and accesses the storage to search for the information inconnection with a subsequent online sale of the OTC drug to the patientby the retailer or a second retailer.
 12. The method of claim 11,wherein the backend platform communicates with a second server of thesecond retailer of the OTC drug to authenticate, and establish and trackeligibility of the patient to purchase the OTC drug for the subsequentonline sale of the OTC drug, including accessing the storage to searchfor the information that indicates the patient is ineligible.
 13. Themethod of claim 10, wherein the backend platform communicating with theclient device or terminal to authenticate the patient comprises atleast: prompting the patient to provide a first name, a last name, andat least one additional piece of information including a mailing addressor a driver's license number of the patient; and authenticating thepatient based on a combination of the first name, the last name, and atleast one additional piece of information that is considered unique tothe patient.
 14. The method of claim 10, wherein the backend platformcommunicating with the client device or terminal to establisheligibility of the patient comprises administering a questionnaire tothe patient to assess the eligibility of the OTC drug, wherein thequestionnaire includes a set of predetermined questions and definedresponses, and branching logic to guide the patient through thequestionnaire based on selected responses to the predeterminedquestions.
 15. The method of claim 10, wherein the backend platformcommunicating with the client device or terminal to establisheligibility of the patient comprises administering a questionnaire tothe patient to assess the eligibility of the OTC drug, wherein thequestionnaire includes a set of predetermined questions, wherein thebackend platform administering the questionnaire comprises storingsurvey data including selected responses to the predetermined questionsin a storage, and wherein the backend platform communicating with theclient device or terminal to establish eligibility of the patientcomprises re-administering the questionnaire after the questionnaire isadministered, accessing the survey data from the storage, presenting asummary of the questionnaire including the predetermined questions andthe selected responses, and prompting the patient to confirm or updatethe selected responses.
 16. The method of claim 10, wherein the backendplatform communicating with the client device or terminal to establisheligibility of the patient comprises accessing a storage to search forinformation that indicates the patient is attempting to repurchase theOTC drug within a particular time period, the patient has taken aquestionnaire specific to the OTC drug more than a threshold number oftimes without eligibility being established, or the patient has takenthe questionnaire within a particular time period of present time. 17.The method of claim 10, wherein redirecting the client device orterminal to a backend platform in communication with the computingsystem for the backend platform to communicate with the client device orterminal to authenticate, and establish and track eligibility of thepatient to purchase the OTC drug comprises transmitting profile data forthe patient to the backend platform.
 18. A non-transitorycomputer-readable storage medium for effecting an online sale of anover-the-counter (OTC) drug to a patient, the computer-readable storagemedium having computer-readable program code stored therein that, inresponse to execution by one or more processors of a computing systemimplementing a server of a retailer of the OTC drug causes the computingsystem to: communicate with a client device or terminal to effect anonline sale of the OTC drug to the patient; redirect the client deviceor terminal to a backend platform in communication with the computingsystem for the backend platform to communicate with the client device orterminal to authenticate, and establish and track eligibility of thepatient to purchase the OTC drug; and receive a redirection of theclient device or terminal back from the backend platform to complete theonline sale of the OTC drug to the patient when eligibility of thepatient is established, or cancel the online sale of the OTC drug to thepatient when the patient is ineligible to purchase the OTC drug.